Deno scriptをbundle & minifyする
#フロントエンド #esbuild
Deno script を bundle & minify するscriptの例
code:bundle.ts
import * as esbuild from "https://deno.land/x/esbuild@v0.20.1/mod.js";
import { denoPlugins } from "jsr:@luca/esbuild-deno-loader@0.9";
const entryPoints = Deno.args0 ? [Deno.args0] : "src/mod.ts";
const outDir = "dist/";
esbuild.build({
plugins: ...denoPlugins(),
entryPoints,
outdir,
bundle: true,
platform: "browser",
format: "esm",
target: "esnext",
minify: true,
sourcemap: true,
treeShaking: true,
});
await esbuild.stop();
deno.json に以下を追加
code:deno.json
{
"tasks": {
"bundle": "deno run --allow-read --allow-write --allow-env --allow-net --allow-run bundle.ts"
}
}
References
https://stackoverflow.com/a/78138507
Use Deno instead of node | esbuild - Getting Started